// 应用配置文件
// 后端服务检测函数
export const checkBackendAvailability = async () => {
  try {
    const response = await fetch('http://localhost:3000/api/todo/', {
      method: 'GET',
      timeout: 2000
    });
    return response.ok;
  } catch (error) {
    console.log('后端服务不可用，将使用mock数据:', error);
    return false;
  }
};

// 是否使用mock数据（默认true，会在应用初始化时根据后端可用性自动更新）
export let useMock = true;

export const updateMockStatus = async () => {
  const isBackendAvailable = await checkBackendAvailability();
  useMock = !isBackendAvailable;
  console.log(`后端服务${isBackendAvailable ? '可用' : '不可用'}，useMock设置为: ${useMock}`);
  return useMock;
};

export default {
  // 是否使用mock数据（当没有后端服务时设为true）
  useMock: useMock,
  
  // mock数据的延迟时间（毫秒），模拟网络请求延迟
  mockDelay: 300,
  
  // mock数据请求成功的概率（0-1），可以模拟部分请求失败的情况
  mockSuccessRate: 1,
  
  // API基础URL
  apiBaseUrl: 'http://localhost:3000/api',
  
  // 后端服务检测相关函数
  checkBackendAvailability,
  updateMockStatus
}